// 自动生成模板PmsAttr
package biz

import "github.com/go-kratos/kratos/v2/log"

// pmsAttr表 结构体  PmsAttr
type PmsAttr struct {
	AttrId      *int    `json:"attrId" form:"attrId" gorm:"primarykey;comment:属性id;column:attr_id;size:19;"`                  //属性id
	AttrName    *string `json:"attrName" form:"attrName" gorm:"comment:属性名;column:attr_name;"`                                //属性名
	SearchType  *bool   `json:"searchType" form:"searchType" gorm:"comment:是否需要检索[0-不需要，1-需要];column:search_type;"`           //是否需要检索[0-不需要，1-需要]
	Icon        *string `json:"icon" form:"icon" gorm:"comment:属性图标;column:icon;size:255;"`                                   //属性图标
	ValueSelect *string `json:"valueSelect" form:"valueSelect" gorm:"comment:可选值列表[用逗号分隔];column:value_select;"`              //可选值列表[用逗号分隔]
	AttrType    *bool   `json:"attrType" form:"attrType" gorm:"comment:属性类型[0-销售属性，1-基本属性，2-既是销售属性又是基本属性];column:attr_type;"` //属性类型[0-销售属性，1-基本属性，2-既是销售属性又是基本属性]
	Enable      *int    `json:"enable" form:"enable" gorm:"comment:启用状态[0 - 禁用，1 - 启用];column:enable;size:19;"`               //启用状态[0 - 禁用，1 - 启用]
	CatelogId   *int    `json:"catelogId" form:"catelogId" gorm:"comment:所属分类;column:catelog_id;size:19;"`                    //所属分类
	ShowDesc    *bool   `json:"showDesc" form:"showDesc" gorm:"comment:快速展示【是否展示在介绍上；0-否 1-是】，在sku中仍然可以调整;column:show_desc;"` //快速展示【是否展示在介绍上；0-否 1-是】，在sku中仍然可以调整
}

// TableName pmsAttr表 PmsAttr自定义表名 pms_attr
func (PmsAttr) TableName() string {
	return "pms_attr"
}

type PmsAttrRepo interface {
}

type PmsAttrUsecase struct {
	repo PmsAttrRepo
	log  *log.Helper
}

func NewPmsAttrUsecase(repo GreeterRepo, logger log.Logger) *PmsAttrUsecase {
	return &PmsAttrUsecase{repo: repo, log: log.NewHelper(logger)}
}
